/*
	klib_ACPI_tables.h

	contains function headers for fetching ACPI table addresses and table structures.

	Author: Aidan Goddard 17/10/13
*/
#ifndef KLIB_ACPI_TABLES_H_INCLUDED
#define KLIB_ACPI_TABLES_H_INCLUDED

// include tables
#include "../../kernel/headers/kernel_tables.h"

// ACPI table base fetching functions
ACPI_MADT *__KLIB__ACPIGetMADTBase();
ACPI_FADT *__KLIB__ACPIGetFADTBase();
ACPI_DSDT *__KLIB__ACPIGetDSDTBase();
ACPI_HPET *__KLIB__ACPIGetHPETBase();

// System config table functions
TBL_SYSCONFIG *__KLIB__GetSystemConfigBase();
uint32_t __KLIB__SystemConfigLock();
void __KLIB__SystemConfigUnlock(uint32_t CPU);


#endif
